<template>
  <div id="app">
    <router-view />
  </div>
</template>

<script>
import { apigetUserInfo } from "@/api";
import Cookie from "js-cookie";
import { mapMutations } from "vuex";
export default {
  created() {
    // 获取用户信息
    this.getUserInfo();
  },
  methods: {
    ...mapMutations(["CHANGE_USER_INFO"]),
    // 获取用户信息
    getUserInfo() {
      if (Cookie.get("token")) {
        apigetUserInfo()
          .then((res) => {
            // 获取用户信息成功 把用户信息保存到redux中
            this.CHANGE_USER_INFO(res.data);
          })
          .catch((err) => {
            this.$message({
              message: "登录已过期 请重新登录",
            });

            // 所有网络响应码非200 的状态都会被catch监听到
            this.$router.push("/login");
          });
      }
    },
  },
};
</script>

<style lang="scss">
html,
body,
#app {
  width: 100%;
  height: 100%;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  list-style: none;
  text-decoration: none;
}
</style>
